#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<string.h>
#include<signal.h>
 
// 设置了SIGINT捕获函数并屏蔽了SIGQUIT信号
void myfunc(int sig)
{
    printf("hello signal:%d\n", sig);
}

int main(int argc,const char* argv[]){
    // 注册信号捕捉函数
    struct sigaction act;
    act.sa_flags = 0;
    act.sa_handler = myfunc;
    // 设置临时屏蔽的信号
    sigemptyset(&act.sa_mask);
    sigaddset(&act.sa_mask,SIGQUIT);// 该信号会被屏蔽
    sigprocmask(SIG_BLOCK,&act.sa_mask,NULL);
    sigaction(SIGINT, &act, NULL);
    while (1);
    return 0;  
}